package com.punai.customer.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.punai.customer.domain.CusLinkMaterialStaCus;
import com.punai.customer.domain.vo.LinkCusStaVo;
import com.punai.customer.domain.vo.MaterialStaCusVo;

import java.util.List;

/**
 * 标准材料与客户材料的对应Service接口
 *
 * @author zxw_
 * @date 2023-01-30
 */
public interface ICusLinkMaterialStaCusService extends IService<CusLinkMaterialStaCus>
{
    /**
     * 查询标准材料与客户材料的对应
     *
     * @param id 标准材料与客户材料的对应主键
     * @return 标准材料与客户材料的对应
     */
    public CusLinkMaterialStaCus selectCusLinkMaterialStaCusById(String id);

    /**
     * 查询标准材料与客户材料的对应列表
     *
     * @param cusLinkMaterialStaCus 标准材料与客户材料的对应
     * @return 标准材料与客户材料的对应集合
     */
    public List<CusLinkMaterialStaCus> selectCusLinkMaterialStaCusList(CusLinkMaterialStaCus cusLinkMaterialStaCus);

    /**
     * 新增标准材料与客户材料的对应
     *
     * @param cusLinkMaterialStaCus 标准材料与客户材料的对应
     * @return 结果
     */
    public int insertCusLinkMaterialStaCus(CusLinkMaterialStaCus cusLinkMaterialStaCus);

    /**
     * 修改标准材料与客户材料的对应
     *
     * @param cusLinkMaterialStaCus 标准材料与客户材料的对应
     * @return 结果
     */
    public int updateCusLinkMaterialStaCus(CusLinkMaterialStaCus cusLinkMaterialStaCus);

    /**
     * 批量删除标准材料与客户材料的对应
     *
     * @param ids 需要删除的标准材料与客户材料的对应主键集合
     * @return 结果
     */
    public int deleteCusLinkMaterialStaCusByIds(String[] ids);

    /**
     * 删除标准材料与客户材料的对应信息
     *
     * @param id 标准材料与客户材料的对应主键
     * @return 结果
     */
    public int deleteCusLinkMaterialStaCusById(String id);

    List<CusLinkMaterialStaCus> selectUsedLink(LinkCusStaVo vo);

    int insertLink(MaterialStaCusVo vo);
}
